//
//  NSURL+OSSImage.h
//  CollagePicture
//
//  Created by simon on 16/10/21.
//  Copyright © 2016年 simon. All rights reserved.
//
//  2021.6.30 图片增加压缩规则
//  2021.08.11 增加指定宽度来自适应比例缩放方法；
//  2021.09.15 修改指定宽度的bug；

#import <Foundation/Foundation.h>

NS_ASSUME_NONNULL_BEGIN


//如果是用SDWebImage老SDK版本下载的，它会压缩一半，所以要弄实际尺寸的2倍，才会不糊；
typedef NS_ENUM(NSInteger, OSSImageResizeType) {

    OSSImageResizeType_wScreen_hX =0,//根据设备获取实际屏幕的宽度；/2021.6
    OSSImageResizeType_wScreenHalf_hX =1,//根据设备获取实际屏幕的宽度/2；/2021.6
    OSSImageResizeType_w50_hX,
    OSSImageResizeType_w100_hX,
    OSSImageResizeType_w200_hX,
    OSSImageResizeType_w300_hX,
    OSSImageResizeType_w400_hX,
    OSSImageResizeType_w500_hX,
    OSSImageResizeType_w600_hX,
    OSSImageResizeType_w700_hX,
    OSSImageResizeType_w800_hX, //
};
//文件链接完整域名：https://${bucket}.${region}.aliyuncs.com/


//2017年最新的方法

@interface NSURL (OSSImage)

/**
 通过样式来处理图片访问规则

 @param resizeType OSSImageResizeType
 @param baseURL 可以传URL对象，也可以传NSString对象；
 @return 返回URL
 */
+ (nullable NSURL *)zx_ossImageURLWithResizeType:(OSSImageResizeType)resizeType relativeToImgPath:(id)baseURL;

/**
 通过样式来处理图片访问规则

 @param resizeType OSSImageResizeType
 @param baseURL 可以传URL对象，也可以传NSString对象；
 @return 返回String
 */
+ (nullable NSString *)zx_ossImageStringWithResizeType:(OSSImageResizeType)resizeType relativeToImgPath:(id)baseURL;



/// 通过指定宽度来自适应比例缩放处理图片访问规则
/// @param width 指定宽度;不然报错The value: 81.69600000000001 of parameter: w is invalid.
/// @param baseURL 可以传URL对象，也可以传NSString对象；
+ (nullable NSURL *)zx_ossImageURLWithResizeWidth:(CGFloat)width relativeToImgPath:(id)baseURL;


/// 通过指定宽度来自适应比例缩放处理图片访问规则
/// @param width 指定宽度;
/// @param baseURL 可以传URL对象，也可以传NSString对象；
+ (nullable NSString *)zx_ossImageStringWithResizeWidth:(CGFloat)width relativeToImgPath:(id)baseURL;

@end

NS_ASSUME_NONNULL_END
